//
//  NSDate+DDAddition.h
//  IOSDuoduo
//
//  Created by abc on 14-6-5.
//  Copyright (c) 2014年 dujia. All rights reserved.
//

#import <Foundation/Foundation.h>

@interface NSDate (DDAddition)

#define DEFAULT_DATE_FORMAT         @"yyyy-MM-dd"
#define DEFAULT_TIME_FORMAT         @"hh:mm:ss"
#define DEFAULT_DATETIME_FORMAT     @"yyyy-MM-dd hh:mm"  // 12时制
#define DEFAULT_DATETIME_24HFORMAT        @"yyyy-MM-dd HH:mm" // 24时制
#define DEFAULT_DATETIME_POINT_FORMAT     @"yyyy.MM.dd"

- (NSString *)transformDateForIOA;

- (NSString *)promptDateString;

- (NSString *)transformDateForCRMRecord;

- (NSDictionary *)getFirstAndEndDayOfYear;

- (NSDictionary *)getFirstAndEndDayOfQuarter;

- (NSDictionary *)getFirstAndEndDayOfMonth;

- (NSDictionary *)getFirstAndEndDayOfWeek;

#pragma mark - 将某个yyyyMMdd日期戳转化成 时间
+ (NSString *)timestampSwitchTime:(NSInteger)timestamp andFormatter:(NSString *)format;
#pragma mark - 将某个hh:mm时间戳转化成 时间
+ (NSString *)timestampSwitchShortTime:(NSInteger)timestamp andFormatter:(NSString *)format;
#pragma mark - 通用时间字符串转时间戳(yyyyMMdd HH:mm)
+ (NSInteger)timeSwitchTimestamp:(NSString *)formatTime andFormatter:(NSString *)format;
#pragma mark - 只获得HH:mm的时间戳
+ (NSInteger)shortTimeSwitchTimestamp:(NSString *)formatTime andFormatter:(NSString *)format;
#pragma mark - 转换字符串时间格式
+ (NSString *)timeSwith:(NSString *)formatTime andFormatter:(NSString *)format andNewFormatter:(NSString *)newFormat;

/**
 * 计算上次日期距离现在多久
 *
 * @param lastTimeStr  上次日期(需要和格式对应)
 * @param format1   上次日期格式
 * @param currentTimeStr 最近日期(需要和格式对应)
 * @param format2   最近日期格式
 *
 * @return 多少天
 */

+ (NSInteger)dayBYtimeIntervalFromLastTime:(NSString *)lastTimeStr
                            lastTimeFormat:(NSString *)format1
                             ToCurrentTime:(NSString *)currentTimeStr
                         currentTimeFormat:(NSString *)format2;

+ (NSInteger)dayBytimeIntervalFromLastTime:(NSTimeInterval)lastTime CurrentTime:(NSTimeInterval)currentTime;

+(NSString *)getNowTimeTimestampWithFormat:(NSString *)format;

@end
